<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <div class="container">
        <button>按钮一</button>
        <button>按钮二</button>
        <button>按钮三</button>
        <div>111</div>
        <div>222</div>
        <div>333</div>
    </div>

    <div class="container2">
        <button>按钮一</button>
        <button>按钮二</button>
        <button>按钮三</button>
        <div>111</div>
        <div>222</div>
        <div>333</div>
    </div>

    <div class="container3">
        <button>按钮一</button>
        <button>按钮二</button>
        <button>按钮三</button>
        <div>111</div>
        <div>222</div>
        <div>333</div>
    </div>
    <button class="next">下一个</button>
    <script>
        // 需求四： 第三个选项卡有下一个切换功能；


        var activeIndex = 0
        function Tab(btns, divs) {
            this.btns = btns;
            this.divs = divs;
            this.btns.forEach((btn, key) => {
                btn.onclick = () => {
                    console.log("点击了按钮", key);
                    // 需要把 索引和 按钮索引一样的显示出来 其他的隐藏 ；
                    activeIndex = key
                    this.changeTab(activeIndex);
                }
            })
        }

        Tab.prototype.changeTab = function (key) {
            this.divs.forEach((div, k) => {
                if (key == k) {
                    //div 显示出来
                    div.style.display = "block";
                } else {
                    div.style.display = "none";
                }
            })
        }





        // 第一个选项卡
        let btns = document.querySelectorAll(".container button");
        let divs = document.querySelectorAll(".container div");
        new Tab(btns, divs);

        // 第二个选项卡
        let btns2 = document.querySelectorAll(".container2 button");
        let divs2 = document.querySelectorAll(".container2 div");
        var tab2 =  new Tab(btns2, divs2);
        let key  = 0;
        setInterval(() => {
            tab2.changeTab(key);
            key++;
            if(key>2){
                key=0
            }
        }, 1000);




        // 第三个选项卡
        let btns3 = document.querySelectorAll(".container3 button");
        let divs3 = document.querySelectorAll(".container3 div");
        let tab3 =  new Tab(btns3, divs3);   
        document.querySelector(".next").onclick = function(){
            activeIndex++;
            if(activeIndex>2){
                activeIndex=0
            }
            tab3.changeTab(activeIndex);
        }




        // 复习 ： 
        // 一.把tab选项卡 做ES6的改造 
        // 二. 实现2个方块的拖拽 实现类的封装  。 第一个 普通拖拽  第二个 要设置边界 ，可视区域内 ，通过继承来实现。


    </script>
</body>

</html>